The world today enjoys a wide variety of services provided over the network. These services range from browsing websites, streaming broadcast content, cloud storage of media, real-time communications, stock trading, big data computing, etc. These services are typically provided by computer systems and networking components in facilities called data centers. Data centers can house a high volume of computer systems (e.g., servers and virtual machines), and these computer systems are connected together via a variety of network devices (e.g., switches and routers). In recent years, data centers have grown in complexity, and the need to improve upon these data centers have also grown. Several design considerations for data centers include efficient use of resources, throughput/speed, mobility of servers and virtual machines, etc.